1. Field of the Invention
The present invention relates to an imaging apparatus and in particular to a technique for correcting a displacement between images.
2. Description of the Related Art
Various techniques have conventionally been provided for correcting a displacement between images when synthesizing a plurality of static images photographed by a digital camera. A technique for correcting a displacement between images due to an unsteady camera is suitable to processing an image photographed in the dark because an exposure time required for photographing therein is longer, increasing the occurrence of an unsteady camera. Specifically, there are methods of correcting an unsteady camera (also noted as “image stabilization method” hereinafter) by means of hardware and software. The image stabilization method by means of hardware includes a lens shift system which moves lens in the direction opposite to an actual moving direction of the camera, and a CCD (charge coupled device) shift system.
As to a technique for stabilizing image by software, provided is a technique which reduces an input image in a plurality of steps, utilizes a global shift amount roughly obtained by using a reduced image on a lower layer level and builds up a scan block when obtaining a local shift amount on a higher level, thereby making it possible to minimize a scan block set for a second image (refer to a patent document 1 for example). Another provision is a technique capable of speeding up a process for synthesizing a plurality of digital image data by making and storing a thumbnail for each of synthetic images in the case of performing a synthesizing process by using a plurality of image data (refer to a patent document 2 for example).
At this point, a description is a detail on a conventional calculation method of a displacement between images among image stabilization techniques by means of software. FIG. 1 is a flow chart showing a displacement amount calculation process according to a conventional technique. The conventional technique obtains, in memory, a plurality of image data acquired from an imaging apparatus and detects a feature point (i.e., an edge) in each image, thereby calculating the displacement amount of each image when making a synthetic image by calculating respective displacement amounts related to a plurality of images and correcting the displacements as shown in the flow chart of FIG. 1.
Additionally, as to an image stabilization technique using software, provided is a technique of detecting an unsteady camera by means of software (refer to a patent document 3 for example).
[Patent document 1] Laid-Open Japanese Patent Application Publication No. 2004-343483
[Patent document 2] Laid-Open Japanese Patent Application Publication No. 2004-234624
[Patent document 3] Laid-Open Japanese Patent Application Publication No. 2005-197911
The above noted lens shift system and CCD shift system are both faced with a problem of an increased cost because hardware must be added to a camera for moving hardware such as a lens, CCD, et cetera. Another problem associated with these methods is that means of the image stabilization is prone to a shock and easy to fail.
As for an image stabilization method using software, individual images must be positioned with each other before compounding the first and second images as described above. Accordingly exercised is to detect a feature point from the first image and obtain a position corresponding to the feature point in the second image and calculate a displacement amount from the difference of positions between the images. Such a calculation method of a displacement amount requires the process regarding the entirety of the image for detecting a feature point and searching a position corresponding thereto. However, a memory capacity for storing a plurality of images tends to get larger in proportionate with digital cameras with bigger pixels, and it causing an increase of cost. Also associated with digital cameras with bigger pixels, processes for an image stabilizer increase, hence it creates a problem of increasing the processing time.